package com.heima.utils.common;

import java.util.regex.Pattern;

/**
 * 手机号工具类
 */
public class PhoneUtil {
    
    /**
     * 中国大陆手机号正则表达式
     * 支持主要运营商号码段：
     * 移动：134-139, 147, 150-152, 157-159, 178, 182-184, 187-188, 198
     * 联通：130-132, 145, 155-156, 166, 171, 175-176, 185-186
     * 电信：133, 149, 153, 173, 177, 180-181, 189, 199
     */
    private static final String PHONE_PATTERN = 
        "^1(3[0-9]|4[579]|5[0-35-9]|6[6]|7[013-8]|8[0-9]|9[89])\\d{8}$";
    
    private static final Pattern PATTERN = Pattern.compile(PHONE_PATTERN);
    
    /**
     * 验证手机号格式是否正确
     * 
     * @param phone 手机号
     * @return true-格式正确, false-格式错误
     */
    public static boolean isPhoneValid(String phone) {
        if (phone == null || phone.isEmpty()) {
            return false;
        }
        return PATTERN.matcher(phone).matches();
    }
}